package com.assistant.moni;

import com.google.common.collect.Maps;
import com.yungee.util.HttpClientUtils;
import lombok.extern.slf4j.Slf4j;

// 定义一个线程类，继承自Thread类，用于模拟每个用户的请求操作
@Slf4j
public class UserRequestThread extends Thread {
    private Counter counter; // 持有对共享计数器资源的引用

    // 构造函数，接收共享的计数器对象和线程名称
    public UserRequestThread(Counter counter, String name) {
        super(name);
        this.counter = counter;
    }

    // 重写Thread类的run方法，定义线程执行的逻辑
    @Override
    public void run() {
        // 模拟每个用户发起5次请求，这里次数可以根据实际需求调整
        for (int i = 0; i < 10000; i++) {
            counter.increment();
            // 让线程暂停一段随机时间，模拟请求之间的间隔时间，更贴合实际请求场景
            String result = HttpClientUtils.get("http://hongyuedu.cn/api/test/index?name=wangyun&age=20"+i, Maps.newHashMap());
            log.info(result);
        }
    }
}